import 'package:wanxiang_app/generated/json/base/json_field.dart';
import 'package:wanxiang_app/generated/json/group_user_entity.g.dart';
import 'dart:convert';
export 'package:wanxiang_app/generated/json/group_user_entity.g.dart';

@JsonSerializable()
class GroupUserEntity {
	@JSONField(name: "Code")
	late int code;
	@JSONField(name: "Data")
	late GroupUserData data;
	@JSONField(name: "Msg")
	late String msg;

	GroupUserEntity();

	factory GroupUserEntity.fromJson(Map<String, dynamic> json) => $GroupUserEntityFromJson(json);

	Map<String, dynamic> toJson() => $GroupUserEntityToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class GroupUserData {
	late List<GroupUserDataUserList> userList;
	late List<GroupUserDataImList> imList;

	GroupUserData();

	factory GroupUserData.fromJson(Map<String, dynamic> json) => $GroupUserDataFromJson(json);

	Map<String, dynamic> toJson() => $GroupUserDataToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class GroupUserDataUserList {
	late int id;
	@JSONField(name: "site_id")
	late int siteId;
	@JSONField(name: "group_id")
	late int groupId;
	@JSONField(name: "user_name")
	late String userName;
	late String salt;
	late String password;
	late String mobile;
	late String email;
	late String avatar;
	@JSONField(name: "nick_name")
	late String nickName;
	late String sex;
	dynamic birthday;
	late String telphone;
	late String area;
	late String address;
	late String qq;
	late String msn;
	late double amount;
	late int point;
	late int exp;
	late int status;
	@JSONField(name: "reg_time")
	late String regTime;
	@JSONField(name: "reg_ip")
	late String regIp;
	@JSONField(name: "user_photo")
	late String userPhoto;
	@JSONField(name: "id_card")
	late String idCard;
	@JSONField(name: "real_name")
	late String realName;
	@JSONField(name: "is_im")
	late int isIm;
	@JSONField(name: "personal_refresh")
	late int personalRefresh;
	@JSONField(name: "group_refresh")
	late int groupRefresh;
	@JSONField(name: "old_refresh")
	late int oldRefresh;
	@JSONField(name: "group_code")
	late int groupCode;
	@JSONField(name: "invitation_code")
	late String invitationCode;
	@JSONField(name: "invitation_use")
	late String invitationUse;
	@JSONField(name: "invitation_num")
	late int invitationNum;
	@JSONField(name: "invitation_time")
	dynamic invitationTime;
	@JSONField(name: "user_id")
	late int userId;
	@JSONField(name: "register_type")
	late int registerType;

	GroupUserDataUserList();

	factory GroupUserDataUserList.fromJson(Map<String, dynamic> json) => $GroupUserDataUserListFromJson(json);

	Map<String, dynamic> toJson() => $GroupUserDataUserListToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class GroupUserDataImList {
	late int id;
	late String account;
	late String token;
	late String scena;
	@JSONField(name: "is_use")
	late int isUse;
	late String nickname;
	late String plat;
	late String games;
	late String photo;
	@JSONField(name: "account_up")
	late String accountUp;
	@JSONField(name: "account_sc")
	late String accountSc;
	@JSONField(name: "account_group")
	late String accountGroup;
	@JSONField(name: "groups_o")
	late String groupsO;
	@JSONField(name: "groups_t")
	late String groupsT;
	@JSONField(name: "groups_th")
	late String groupsTh;
	@JSONField(name: "is_rest")
	late int isRest;
	@JSONField(name: "order_id")
	late int orderId;
	@JSONField(name: "add_time")
	late String addTime;
	@JSONField(name: "is_hidden")
	late int isHidden;
	@JSONField(name: "update_time")
	dynamic updateTime;

	GroupUserDataImList();

	factory GroupUserDataImList.fromJson(Map<String, dynamic> json) => $GroupUserDataImListFromJson(json);

	Map<String, dynamic> toJson() => $GroupUserDataImListToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}